The present invention relates to a method and apparatus for processing image data acquired by an optical scanning device and, more particularly, to an image processing system which receives overlapping image data acquired by an optical scanning device and which reconstructs an original image from the overlapping images.
Image scanning devices such as, for example, flat bed image scanners and sheet feed image scanners, are commonly used to scan documents containing image information to convert the image information contained on the document into a digital representation of the document. Image scanning devices typically utilize a linear imaging device which is scanned across a document being imaged to produce multiple one-dimensional (1-D) slices of the image which are subsequently processed and combined to produce a two-dimensional (2-D) digital representation of the image contained on the document.
A light source comprised by the image scanning device projects light onto the document being scanned and the light reflected from the document is focused by imaging optics onto the linear imaging device. The linear imaging device comprises one or more photosensor which convert the light reflected from the document into analog signals. The analog signals are then converted by an analog-to-digital converter into a digital representation. The digital representation is then processed by a processing circuit such as, for example, a microprocessor or a digital signal processor in accordance with a predetermined algorithm to produce an output. The output may be, for example, a reproduction of the original image scanned.
Generally, image scanning devices can be categorized into two categories, namely, image scanning devices which utilize an optical reduction system in combination with a single photosensor and image scanning devices which utilize a contact image sensor comprised of a plurality of photosensor in combination with an array of optical fibers which function as the imaging optics. In a reduction system of an image scanning device, a single, relatively small, high-resolution linear image sensor is used to capture an image of the object (e.g., a document) being scanned. Since the image sensor is relatively small, reduction optics are used to reduce the size of the images contained on the object into smaller images which fit onto the photosensor.
An advantage of image scanning devices which utilize reduction systems is that only a small image sensor, i.e., a single photosensor, is required for capturing an image of the object being scanned, which is normally relatively inexpensive to manufacture. One disadvantage of image scanning devices which utilize reduction systems is that the reduction optics require a relatively long optical path in order to focus the object image onto the single photosensor, which, consequently, increases the overall size of the image scanning device. Although attempts have been made to xe2x80x9cfoldxe2x80x9d the optical path by incorporating a plurality of mirrors into the imaging optics in order to reduce the size of the image scanning device, additional mirrors increase light loss and increase the cost of the imaging optics. Another disadvantage of image scanning devices which utilize reduction systems is that producing relative motion between the object being scanned and the photosensor often involves substantial mechanical difficulty and, consequently, can lead to malfunctions and increased maintenance costs.
A typical contact image sensor utilized in an image scanning device has a length equal to the length of the 1-D scan to be performed. Typically, the contact image sensor comprises an array of photosensor, rather than a single photosensor, because a single photosensor having a length equal to the 1-D length of the scan to be performed is extremely difficult and expensive to manufacture. Therefore, a plurality of photosensor are closely aligned with each other in a linear array so that the photosensor are in contact with each other and so that no gaps exist between the photosensor.
In order to focus the image of the object being scanned onto the array, an array of optical fibers is utilized as the imaging optics for focusing the light from the object being scanned onto the contact image sensor. A one-to-one relationship is required between the photosensor of the array and the optical fibers of the imaging optics due to the fact that the fields of views of the optical fibers with respect to their respective photosensor overlap. If a one-to-one relationship is not maintained between the optical fibers and the photosensor, the original object image will not be capable of being accurately reconstructed from the individual 1-D images focused onto the photosensor by the optical fibers.
One advantage of implementing a contact image sensor in an image scanning device is that the optical path of the imaging optics is relatively short, which reduces the overall size of the image scanning device. A disadvantage of utilizing a contact image sensor is that the array of photosensor must have a length equal to the length of the 1-D scan being performed. Also, it is a difficult and expensive process to place the individual photosensor in the array and align them since this task must be performed monolithically in silicon.
In order to create an photosensor array of this length, full-sized photosensor must be used in the array, which typically are expensive due to the fact that they are monolithically manufactured in silicon and require a relatively large amount of silicon area. The photosensor cannot be fabricated in the same dice. A separate dice must be used for each photosensor. Therefore, each dice must be cut to precise tolerances and then all of the dice must be carefully placed in alignment to create a long line which matches the length of the object (e.g., the document) being scanned. This is a difficult and expensive process. In fact, the alignment process is so difficult that it generally is done by hand, often leading to alignment errors which require that the entire array be discarded, or scrapped. This loss significantly increases the overall cost of the image scanning device since the die are typically the largest percentage of the overall cost of the contact image sensor.
Accordingly, a need exists for an image scanning device having a relatively short optical path and which is capable of utilizing an image sensor which is relatively inexpensive to manufacture.
The present invention provides a method and apparatus for constructing a representation of an original image scanned with an optical scanning device. The apparatus of the present invention comprises a processing device for generating an electrical representation of the original image scanned with the optical scanning device and for processing the electrical representation to obtain a representation of the original image.
Preferably, the scanning device used with the processing device of the present invention comprises an illumination device for projecting light onto an original image being scanned and an optical image sensing device disposed to receive light reflected from the original image. The processing device is in communication with the optical image sensing device for receiving electrical signals produced by the optical sensors of the optical image sensing device and for processing the electrical signals. The optical image sensing device comprises a plurality of optical sensors. Each optical sensor has a field and at least two of the optical sensors have fields of view which at least partially overlap. Each optical sensor generates electrical signals relating to the portion of the original image within the field of view of the respective optical sensor.
The processing device processes the image data obtained by the optical sensors and determines the amount of overlap of the images obtained by adjacent optical sensors. Once the amount of overlap has been determined, the processing device uses the determined amount of overlap to construct a representation of the original image.
The processing device preferably comprises an analog-to-digital converter (ADC), a memory device and a computer. The ADC receives the electrical signals produced by the optical sensors and generates digital signals representative of the images within the fields of view of the optical sensors. The computer receives the digital signals generated by the analog-to-digital converter and stores the digital representations corresponding to the image data in the memory device. The computer reads the image data out of the memory device and utilizes first and second sub-arrays of the image data to determine the amount of overlap in the images obtained by adjacent optical sensors. The computer correlates the sub-arrays to determine the areas of overlap in the images and then uses this determination to construct the representation of the original image.
In accordance with the preferred embodiment of the present invention, the computer correlates the sub-arrays by aligning particular elements in the first sub-array with one or more particular elements in the second sub-array, by multiplying the aligned elements together, by summing the products obtained as a result of the multiplication operations, and by storing the sum of the products as elements in the correlation array. After all of the elements of the correlation array have been produced, the computer determines which element of the correlation array has the largest value. The image data which corresponds to this value in the correlation is the overlapping image data.
In accordance with a second embodiment of the present invention, the computer correlates the sub-arrays by aligning particular elements in the first sub-array with particular elements in the second sub-array, by obtaining the differences between the values of the aligned elements in the sub-arrays, by obtaining the absolute values of the differences, by summing the absolute values, and by storing the sums as elements of the correlation array. The computer then determines which element of the correlation array has the smallest value. In this case, the smallest element in the correlation array corresponds to the overlapping image data.
In accordance with another embodiment of the present invention, the computer correlates the sub-arrays by aligning particular elements in the first sub-array with particular elements in the second sub-array, by obtaining the differences between the values of the aligned elements in the sub-arrays, by obtaining the absolute values of the differences, by squaring the absolute values, by summing the results of the squaring operations, and by storing the sums as elements of the correlation array. After all of the elements of the correlation array have been produced, the computer determines which element of the correlation array has the smallest value, which corresponds to the overlapping image data.
After the computer determines the overlapping image data, the computer constructs the representation of the original image by eliminating the overlap. The overlap can be eliminated by any one of a plurality of methods. The computer can average the image data in the first sub-array that corresponds to the overlap with the data in the second sub-array that corresponds to the overlap. The average can be weighted in order to ensure that discontinuities resulting from offset and gain errors in the optical sensors are removed. Alternatively, the overlap can be eliminated by simply discarding the image data in the first sub-array that corresponds to the overlap. Interpolation techniques may be used to eliminate sub-pixel overlaps.
Other features and advantages of the present invention will become apparent from the following description, drawings and claims.